#ifndef __STM32_OLED_H__
#define __STM32_OLED_H__

#include "util.h"

void OLED_init(void);

void OLED_clear(void);

void OLED_white_screen(void);

// x - row 1page max 8,y - column
// void OLED_draw_string(int x, int y, char str[], int len);

// x - row 2page max 4,y - column
// void OLED_draw_hanzi(int x, int y, int str[] /*存储是汉字编码*/, int len);

// 第二代API 64 * 128 x-64 y-128
//  x - row,y - column
void OLED_set_pixel(int x, int y, byte color);

// draw full screen
void OLED_show_screen(void);

void OLED_set_all_bytes(byte color);

void OLED_dark_screen(void);

void OLED_clear_screen(void);

// 任意位置输出汉字
//  char code 4 byte
void OLED_draw_text(int x, int y, c32 str[], int len);

// font tools
// int OLED_char_code(char s[],int size);

//  找到字库中的索引
// int OLED_char_code_to_char_matrix_index(int char_code);

// 单个字符（包括汉字）找到字库中的索引
// int OLED_char_to_char_matrix_index(char s[],int size);

// ASCII code 转 本地字符code 码
int OLED_str_to_str(c32 dest[], int d_len, char src[], int s_len);

void OLED_text(int x, int y, char *s);

void OLED_draw_tiger(void);

#endif
